
layui.use('element', function() {
    var element = layui.element;
    window.$ = layui.$;
    /*弹框层
    * 参数  datas: 弹框内容 可为html结构
    *       title: 弹框标题
    *       width: 弹框宽度
    *       height: 弹框高度
    * */
    window.alerts=function(datas,title,width,height){
        if(!width){width='420px'};          //判断宽度是否有值   无值 给默认
        if(!height){height='240px'};        //判断是否给定高度   无值 给默认
        return layer.open({
            type: 1,                        //类型
            title:title,                    //弹框标题名
            skin: 'layui-layer-rim', //加上边框
            area: [width,height ], //宽高
            content: datas          //   弹框内容
        });
    };

    //自运行函数 防止直接跳入页面内部;
    (function () {
        console.log(getCookie('yanzheng'));
        if(!getCookie('yanzheng')){
            // location.href=urls+'/index.html';
        }

    }())
    //打印图标拖拽功能
    function Tuozhuais(name) {
        this.name=name;                     //需要拖拽对象
        this.x=0;                           //记录点下时X轴坐标；
        this.y=0;                           //记录点下时Y轴坐标；
        this.xx=0;                          //记录抬起时X轴坐标；
        this.yy=0;                          //记录抬起时Y轴坐标；
    };
    Tuozhuais.prototype.into=function () {      //拖拽功能入口
        this.mousedown();
        this.mouseup();
    };
    Tuozhuais.prototype.mousedown=function () {     //鼠标按下
        var _this=this;
        $(document).on('mousedown',this.name,function (e) {
            _this.mousemove(e)
            e.stopPropagation();
            e.preventDefault();
        });

    };
    Tuozhuais.prototype.mousemove=function (e) {             //监听在document上的移动
        var _this=this;
        this.x=0;
        this.xx=0;
        this.y=0;
        this.yy=0;
        $(document).on('mousemove',function (e) {
            _this.positioning(e,'mousemove');
            $(this).mouseleave(function () {                //如果鼠标移出窗口 清除事件，样式重置
                $(this).off('mousemove');
                $(_this.name).css({'left':90+'%','top':85+'%'});
            });
        })
        
    };
    Tuozhuais.prototype.removes=function () {           //清除document上绑定事件；
        $(document).off('mousemove');                   //清除绑定在document上的事件；
        $(document).off('mouseleave');                  //清除绑定在document上的事件；
        if(!this.judge()){
            layuiExport()('.layui-table-main .layui-table');            //打印
        }else{
            $('#dlink').removeAttr('href').removeAttr('download');      //清除打印功能；
        };
    };
    Tuozhuais.prototype.mouseup=function () {           //监听鼠标被抬起
        var _this=this;
        $(document).on('mouseup',this.name,function (e) {       //监听this.name的鼠标移动事件
            _this.positioning(e,'mouseup');                     //重置计算定位
            _this.removes();                                    //调用清除函数，清除位于document对象上的绑定事件
        })

    };
    Tuozhuais.prototype.judge=function () {                     //判断是否移动，未移动就打印。否则就不打印；
        var judge=true;                                         //初始化判断条件judge
        if(Math.abs(this.x-this.xx)>30||Math.abs(this.y-this.yy)>30){                   //如果判断结果为移动了，judge为false，否则为true;
            judge=false;
        }else{
            judge=true;
        }
        return judge;                                         //将判断条件返回出去
    };

    Tuozhuais.prototype.positioning=function (e,n) {          //计算定位
        if(n=='mousemove'){                                     //如果是按下时，给this.x，this.y赋值并且动态更改this.name的样式，使其可以跟着鼠标移动；
            this.x=e.originalEvent.x || e.originalEvent.layerX || 0;        //获取鼠标按下时X轴坐标
            this.y=e.originalEvent.y || e.originalEvent.layerY || 0;        //获取鼠标按下时Y轴坐标
            $(this.name).css({'left':this.x-25+'px','top':this.y-25+'px'}); //设置当前的this.name的css,使其可以追随鼠标移动
        }else{                                                  //否则给this.xx,this.yy赋值，用以判断是否移动过
            this.xx=e.originalEvent.x || e.originalEvent.layerX || 0;       //获取鼠标抬起时X轴坐标
            this.yy=e.originalEvent.y || e.originalEvent.layerY || 0;       //获取鼠标抬起时Y轴坐标
        };
    };

    var tuo=new Tuozhuais('#dlink');                                        //调用函数传递参数this.name
    tuo.into();                                                             //调用接口方法
    // function tuozhuais() {
    //     var pan;
    //     var cc,zz;
    //
    //     var isMove = false;
    //     $('#dlink').mousedown(function (e) {        //监听鼠标按下
    //         isMove = false
    //         pan=true;
    //         var _this=$(this);
    //         cc = e.originalEvent.x || e.originalEvent.layerX || 0;
    //         zz = e.originalEvent.y || e.originalEvent.layerY || 0;
    //         $(document).mousemove(function (e) {        //监听鼠标在页面内的移动进行判断是否需要标签同步移动
    //
    //             isMove = true;
    //             var xx = e.originalEvent.x || e.originalEvent.layerX || 0;
    //             var yy = e.originalEvent.y || e.originalEvent.layerY || 0;
    //             console.log(Math.abs(cc-xx),yy)
    //             if(Math.abs(cc-xx)>30||Math.abs(zz-yy)>30){
    //                 _this.css({'left':xx-25+'px','top':yy-25+'px'});
    //             };
    //             $(this).mouseleave(function () {                //如果鼠标移出窗口 清除事件，样式重置
    //                 $(this).off('mousemove');
    //                 _this.css({'left':90+'%','top':85+'%'});
    //             });
    //         })
    //         e.stopPropagation();
    //         e.preventDefault();
    //         console.log('DDDDDDDPWWWWWW')
    //
    //     })
    //     $('#dlink').mouseup(function (e) {             //鼠标弹起 清除document上的事件
    //
    //         console.log('mousw UPPPPPPPPPPPP')
    //         console.log($(this))
    //         var xx = e.originalEvent.x || e.originalEvent.layerX || 0;
    //         var yy = e.originalEvent.y || e.originalEvent.layerY || 0;
    //         if(Math.abs(cc-xx)>30||Math.abs(zz-yy)>30){
    //             pan=false;
    //         }
    //         var _this=$(this)
    //         $(document).off('mousemove');
    //         $(document).off('mouseleave');
    //         // var xx = e.originalEvent.x || e.originalEvent.layerX || 0;
    //         // var yy = e.originalEvent.y || e.originalEvent.layerY || 0;
    //         // console.log(xx,yy)
    //         // _this.css({'left':xx-25+'px','top':yy-25+'px'});
    //
    //
    //         if(pan && !isMove){                        //如果没有移动过  就认为是没有拖拽  直接进行打印
    //             layuiExport()('.layui-table-main .layui-table');
    //         }else{
    //             $('#dlink').removeAttr('href').removeAttr('download')
    //         }
    //         isMove = false;
    //         //
    //     })
    //
    //
    // }
    // tuozhuais();
});







/*表格点击跳转详情页
* 参数：obj：点击对象 类名或id名
*      urls：跳转页面路径
* */
function detailsJump(obj,urls) {

    $(obj).on('click',function () {

        if(urls==undefined){        //判断是否引入url地址
            layer.msg('urls未填写');
            return
        }
        console.log(urls==undefined)
        window.location.href=urls;  //点击跳转详情页面

    })

}



/*移动  pc  公用   确定提示弹框
 *参数 : shadeClose： 是否允许点击遮罩层消失  默认false 不可消失  yes 点击确定时调用的函数  no 点击取消调用的函数
 *       title： 标题
 *       content： 弹框内容
 */

function Eject(title,content,yes) {
    if(!content){content=title}
    layer.open({
        title: title            //标题
        ,content: content       //弹窗内容
        ,shadeClose:true        //是否允许点击遮罩层消失
        ,btn:['确定','取消']    //按钮
        ,yes: function(index, layero){
            //按钮【按钮一】的回调
             yes()
        }
        ,btn2:function () {

        }

        ,success: function(layero, index){
            // console.log(layero, index);
        }
    });

}

/*点击跳转详情页
*参数： urls：要跳转的urls 地址
*       id：传递的id 用于字符串拼接
*       函数未完成  待完善
* */
function jumps(urls) {
    window.location.href=urls          //页面跳转
}





/*layer 自带动画弹框*/
//            layer.msg('hello');



/*分页参数                   //ajax提交
*count                      //数据总条数  服务器端获取
*limit                      //  每页显示的条数。laypage将会借助 count 和 limit 计算出分页数
*groups                     //  连续出现的页码个数
*layout                     //  自定义排版。可选值有：count（总条目输区域）、prev（上一页区域）、page（分页区域）、next（下一页区域）、limit（条目选项区域）、 、skip（快捷跳页区域）
* pagingurl
*
*/

function paging(count,pagingurl,where) {
    layui.use(['laypage', 'layer','form','table'], function(){
        var laypage = layui.laypage
            ,form=layui.form
            ,table=layui.table
            ,layer = layui.layer;
        if(typeof count!="number"){
            layer.msg('无法获取数据总数');
        }
        var _urls=pagingurl;
        var where=where;
        console.log(where)
        //调用分页
        laypage.render({
            elem: 'demo7'       //页面结构须有div  id名 demo7
            ,count: count
            ,limit:10
            ,groups:5
            ,layout: ['count', 'prev', 'page', 'next', 'limit', 'skip']
            ,request: {
                pageName: 'currPage' //页码的参数名称，默认：page
                ,limitName: 'pageSize' //每页数据量的参数名，默认：limit
            }
            ,jump: function(obj,first){         //first   判断是否为初次进入
                console.log(obj)
                if(!first){                     //判断是否初次加载  初次加载即不执行
                    console.log(obj)



                }
            }
        });

    });

}





